﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace Proyecta.Data.DAO
{
    public class PerfilesPermisosDAO:iDAO
    {
        conexion.SQL con = conexion.SQL.getSingleton();
        DataSet ds = null;
        string sqlsentencia;
        SqlCommand sqlcom;
        SqlDataAdapter Datos;

        public System.Data.DataSet Mostrar(object obj)
        {
            BO.PerfilesPermisosBO oPP = (BO.PerfilesPermisosBO)obj;
            sqlcom = new SqlCommand();
            Datos = new SqlDataAdapter();
            ds = new DataSet();
            sqlcom.Connection = con.conectar();
            con.abrir_conexion();
            sqlsentencia = "SELECT PerfilesPermisos.idRol		,Roles.Rol      ,PerfilesPermisos.idPermiso      ,Permisos.Nombre      ,Permisos.Activo  FROM [Proyecta].[dbo].[PerfilesPermisos]  inner join Roles  on Roles.idRol=PerfilesPermisos.idRol   inner join Permisos  on Permisos.idPermiso=PerfilesPermisos.idPermiso";
            sqlcom.CommandText = sqlsentencia;
            Datos.SelectCommand = sqlcom;
            Datos.Fill(ds);
            con.cerrar_conexion();
            return ds;
        }

        public void Insertar(object obj)
        {
            BO.PerfilesPermisosBO oPP = (BO.PerfilesPermisosBO)obj;
            Database.DatabaseHelper dbh = new Database.DatabaseHelper();
            dbh.Open();
            dbh.Insert(oPP, "PerfilesPermisos", "");
            dbh.Close();
        }

        public void Modificar(object obj)
        {
            BO.PerfilesPermisosBO oPP = (BO.PerfilesPermisosBO)obj;
            Database.DatabaseHelper dbh = new Database.DatabaseHelper();
            dbh.Open();
            dbh.Update(oPP, "PerfilesPermisos", "");
            dbh.Close();
        }

        public int Eliminar(object obj)
        {
            throw new NotImplementedException();
        }

        
        public void Delete(object obj)
        {
            BO.PerfilesPermisosBO oPP = (BO.PerfilesPermisosBO)obj;
            Database.DatabaseHelper dbh = new Database.DatabaseHelper();
            dbh.Open();
            dbh.Delete(oPP, "PerfilesPermisos", "");
            dbh.Close();
        }


        
    }
}
